Amplitude Control In A Variable Load Environment

ABSTRACT

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for varying symbol amplitude. In one aspect, a system includes a symbol generator that includes a waveform generator configured to output waveforms at a plurality of selectable fundamental frequencies and with a selectable duty cycle. The symbol generator can also include a bandpass filter having a pass-band that corresponds to a communications channel of a communications network. The system can also include data processing apparatus operable to interact with the symbol generator and further operable to determine that at least a threshold number of endpoints that receive symbols from the symbol generator are experiencing a same type of transmission error. In response to the determination, the data processing apparatus can cause the waveform generator to adjust at least one of the fundamental frequency or a duty cycle of the waveforms. The fundamental frequency can be adjusted to a frequency having a harmonic that is within the pass-band.

BACKGROUND

This specification relates to data communications.

Service providers utilize distributed networks to provide services tocustomers over large geographic areas. For example, communicationscompanies utilize a distributed communications network to providecommunications services to customers. Similarly, power companies utilizea network of power lines, meters and other network elements to providepower to customers throughout a geographic region and to receive dataabout the power usage.

These service providers depend on proper operation of their respectivenetworks to deliver services to the customers and receive data regardingthe services provided. For example, the service provider may want accessto daily usage reports to efficiently bill their customers for theresources that are consumed or otherwise utilized by the customers.Service providers may also transmit data such as software commands,firmware updates, and other information to network elements tofacilitate proper operation of the network elements. Therefore, it isimportant for data being transmitted over the network to be reliablyreceived by the network elements.

In power line communication (PLC) networks, a power substation caninclude an endpoint control apparatus that sends data to endpoints(e.g., meters, load control switches, remote service switches, and otherendpoints) in the network. For example, the endpoint control apparatuscan transmit data specifying updated communications channel assignments,synchronization data, and/or updated firmware to the endpoints in thePLC network. If the amplitude at which the data are transmitted is toolow, the endpoints may not receive the data that are transmitted by theendpoint control apparatus. However, if the amplitude at which the dataare transmitted is too high, the data may be received by neighboringendpoints that are assigned to another endpoint control apparatus, whichmay interfere with proper functioning of the neighboring endpoints.

SUMMARY

In general, one innovative aspect of the subject matter described inthis specification can be embodied in a system includes a symbolgenerator that includes a waveform generator configured to outputwaveforms at a plurality of selectable fundamental frequencies and witha selectable duty cycle. The symbol generator can also include abandpass filter having a pass-band that corresponds to a communicationschannel of a communications network. The system can also include dataprocessing apparatus operable to interact with the symbol generator andfurther operable to determine that at least a threshold number ofendpoints that receive symbols from the symbol generator areexperiencing a same type of transmission error. In response to thedetermination, the data processing apparatus can cause the waveformgenerator to adjust at least one of the fundamental frequency or a dutycycle of the waveforms. The fundamental frequency can be adjusted to afrequency having a harmonic that is within the pass-band. Otherembodiments of this aspect include corresponding methods, apparatus, andcomputer programs, configured to perform the actions of the methods,encoded on computer storage devices.

These and other embodiments can each optionally include one or more ofthe following features. The data processing apparatus can be furtheroperable to perform operations including: receiving transmission qualitydata specifying a bit error rate as for symbols that were generated bythe symbol generator and received by the endpoints. Determining that atleast a threshold number of endpoints are experiencing a same type oftransmission error can include determining that at least the thresholdnumber of endpoints are detecting a bit error rate that exceeds athreshold bit error rate.

The data processing apparatus can be operable to adjust at least one ofthe fundamental frequency or a duty cycle by being configured to causethe waveform generator to increase the fundamental frequency in responseto determining that at least the threshold number of endpoints aredetecting the bit error rate that exceeds the threshold bit error rate.The data processing apparatus can be operable to cause the waveformgenerator to adjust at least one of the fundamental frequency or a dutycycle by being configured to cause the waveform generator to increaseboth the fundamental frequency and the duty cycle in response todetermining that at least the threshold number of endpoints aredetecting the bit error rate that exceeds the threshold bit error rate.

The data processing apparatus can be operable to cause the waveformgenerator to adjust at least one of the fundamental frequency or a dutycycle by being configured to cause the waveform generator to increasethe duty cycle in response to determining that at least the thresholdnumber of endpoints are detecting the bit error rate that exceeds thethreshold bit error rate.

The data processing apparatus can be further operable to performoperations including receiving transmission quality data specifying thata number of neighboring endpoints with which a neighboring substation iscommunicating has decreased relative to a number of neighboringendpoints with which the neighboring substation is assigned tocommunicate. Determining that at least a threshold number of endpointsare experiencing a same type of transmission error can includedetermining that at least the threshold number of neighboring endpointswith which the neighboring endpoints are communicating has decreasedmore than a threshold amount.

The data processing apparatus can be operable to cause the waveformgenerator to adjust at least one of the fundamental frequency or a dutycycle by being configured to cause the waveform generator to decreasethe fundamental frequency in response to determining that at least thethreshold number of neighboring endpoints with which the neighboringendpoints are communicating has decreased more than a threshold amount.The data processing apparatus can be operable to cause the waveformgenerator to adjust at least one of the fundamental frequency or a dutycycle by being configured to cause the waveform generator to decreaseboth the fundamental frequency and the duty cycle in response todetermining that at least the threshold number of neighboring endpointswith which the neighboring endpoints are communicating has decreasedmore than a threshold amount.

The data processing apparatus can be operable to cause the waveformgenerator to adjust at least one of the fundamental frequency or a dutycycle by being configured to cause the waveform generator to decreasethe duty cycle in response to determining that at least the thresholdnumber of neighboring endpoints with which the neighboring endpoints arecommunicating has decreased more than a threshold amount

In general, another aspect of the subject matter described in thisspecification can be embodied in methods that include the actions ofselecting a first fundamental frequency for symbols that are transmittedto endpoints in a communications system, the first fundamental frequencybeing selected so that a baseline harmonic of the first fundamentalfrequency is within a downstream channel over which data are transferredfrom a substation to the endpoints, the baseline harmonic being at leasta second harmonic of the first fundamental frequency; receiving statusdata from the endpoints, the status data for each endpoint specifying anumber of bit errors that have been detected by the endpoint;determining that the status data from at least a threshold number of theendpoints specify a number of bit errors that exceeds a threshold numberof bit errors; and adjusting the first fundamental frequency to a secondfundamental frequency that is higher than the first fundamentalfrequency, the second fundamental frequency being a frequency at which alower harmonic than the baseline harmonic is within the downstreamchannel. Other embodiments of this aspect include corresponding systems,apparatus, and computer programs, configured to perform the actions ofthe methods, encoded on computer storage devices.

These and other embodiments can each optionally include one or more ofthe following features. Receiving status data further can includereceiving, from each of the endpoints, status data that are indicativeof endpoint identity. Determining that status data from at least athreshold number of the endpoints specify a number of bit errors thatexceeds a threshold number of bit errors can include identifying, basedon the status data, the endpoints with which the substation is assignedto communicate; and determining that the status data for at least thethreshold number of the identified endpoints specify a number of biterrors that exceeds the threshold number of bit errors. Identifying theendpoints with which the substation is assigned to communicate caninclude identifying the endpoints having unique identifiers that areincluded in a set of network identifiers for endpoints with which thesubstation is assigned to communicate.

Methods can further include the actions of determining that status dataare being received from at least a threshold number of neighboringendpoints, each neighboring endpoint being an endpoint with which thesubstation is not assigned to communicate; and adjusting the firstfundamental frequency to a third fundamental frequency, the thirdfundamental frequency being a frequency at which a higher harmonic thanthe baseline harmonic is within the downstream channel.

Determining that status data are being received from at least thethreshold number of neighboring endpoints can include receiving dataindicating that a number of endpoints with which a neighboringsubstation is communicating has decreased relative to a number ofendpoints with which the neighboring substation is assigned tocommunicate; and determining that the number of endpoints with which theneighboring substation is communicating has decreased more than athreshold amount.

Methods can further include the actions of transmitting the symbols tothe endpoints, the symbols having an initial fundamental frequency thatis within the downstream channel and being transmitted at a firstamplification factor; and determining that at least a threshold numberof neighboring endpoints are receiving the symbols, each neighboringendpoint being an endpoint with which the substation is not assigned tocommunicate. Selecting the first fundamental frequency can includereducing the initial fundamental frequency to a reduced frequency atwhich a harmonic of the reduced frequency is within the downstreamchannel; determining that the symbols are being received from fewer thanthe threshold number of neighboring endpoints; and selecting the reducedfrequency to be the first fundamental frequency.

Methods can further include the actions of transmitting the symbols tothe endpoints at the first amplification factor, the symbols beinggenerated at the first fundamental frequency. Methods can furtherinclude the actions of following adjustment of the first fundamentalfrequency, adjusting a duty cycle of the second fundamental frequencyuntil an amplitude of the symbol is within a target amplitude range.

In general, another aspect of the subject matter described in thisspecification can be embodied in methods that include the actions oftransmitting symbols from a substation to endpoints in a communicationsnetwork, the symbols being transmitted at a first frequency andamplified at an amplification factor, the first frequency being aharmonic of a fundamental frequency for the symbols, the harmonic beingwithin a downstream channel over which the substation communicates withthe endpoints; receiving transmission quality data specifying a measureof transmission quality for the symbols; determining that at least athreshold number of endpoints in the communications network areexperiencing a same type of transmission error; adjusting thefundamental frequency based on the type of transmission error, thefundamental frequency being adjusted so that a different harmonic of theadjusted fundamental frequency is within the downstream channel; andtransmitting the symbols over the downstream channel, the symbols beinggenerated at the fundamental frequency and amplified at theamplification factor. Other embodiments of this aspect includecorresponding systems, apparatus, and computer programs, configured toperform the actions of the methods, encoded on computer storage devices.

In general, another aspect of the subject matter described in thisspecification can be embodied in methods that include the actions ofgenerating a first symbol at a first fundamental frequency; filteringthe first symbol with a filter having a pass-band that includes aharmonic frequency of the first fundamental frequency; amplifying thefiltered first symbol at an amplification factor; determining that atleast a threshold number of communications errors are occurring atendpoints to which the first filtered symbols are being transmitted;generating a second symbol at a second fundamental frequency that isdifferent than the first fundamental frequency, the second fundamentalfrequency having a harmonic that is within the pass-band; filtering thesecond symbol with the filter; and amplifying the second filtered symbolat the amplification factor. Other embodiments of this aspect includecorresponding systems, apparatus, and computer programs, configured toperform the actions of the methods, encoded on computer storage devices.

Particular embodiments of the subject matter described in thisspecification can be implemented so as to realize one or more of thefollowing advantages. The amplitude at which data are transmittedthrough a network may be remotely adjusted without adjusting the outputamplitude of the transmitter that is transmitting the data. Thereliability of data communications over a network having a variable loadcan be increased (relative to constant amplitude transmissions) byadjusting the amplitude at which data are transmitted in response tochanges in load. The reliability of data communications over a networkhaving a variable load can be increased (relative to constant amplitudetransmissions) by adjusting the amplitude at which data are transmittedin response to detecting a threshold packet loss.

The details of one or more embodiments of the subject matter describedin this specification are set forth in the accompanying drawings and thedescription below. Other features, aspects, and advantages of thesubject matter will become apparent from the description, the drawings,and the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an example network environment in which anendpoint control apparatus communicates with endpoints.

FIG. 2 is a block diagram of an example endpoint control apparatus andillustrates symbol amplitude adjustment.

FIG. 3 is a flow chart of an example process for varying symbolamplitude.

FIG. 4 is a flow chart of another example process for varying symbolamplitude.

FIG. 5 is a block diagram of an example system that can be used tofacilitate symbol amplitude variation.

Like reference numbers and designations in the various drawings indicatelike elements.

DETAILED DESCRIPTION

Power line communications (PLC) networks, as well as many othercommunications networks change over time as network elements can beadded to and/or removed from the network over time. For example in a PLCnetwork, additional endpoints (e.g., power meters), service points(e.g., homes or businesses), switches, and/or capacitor banks can beadded to, or removed from, the network over time. These changes in thenetwork cause the load of the network to change over time, which canmake it difficult communicate over the network. For example, as the loadof the network changes, it may be necessary to adjust the amplitude ofcommunications signals that are being transmitted over the network.However, many amplifiers that are used to transmit data throughcommunications networks, such as a PLC network, may have manuallyselectable amplification parameters (e.g., amplification factors), andthese amplifiers may be located in remote areas, such that makingadjustments to the amplification parameters is time consuming andpotentially costly.

As described in more detail below, the data that are transmitted over acommunications network may be transmitted over one or morecommunications channels, and the waveforms that represent the data maybe filtered to remove spectral components that are outside of thecommunications channel. Because the “out-of-channel” spectral componentsare filtered, the waveform that is used to represent the data can neednot have a fundamental frequency that passes through the filter, as longas the waveform has harmonic components that are passed through thefilter.

At certain duty cycles (e.g., 50% duty cycle), the amplitude of harmonicspectral components is inversely proportional to the “order” of theharmonic. For example, when the fundamental frequency is transmittedwith a 50% duty cycle, a third order harmonic (i.e., the third harmonic)of the fundamental frequency will have higher amplitude than the fifthorder harmonic (i.e., the fifth harmonic) of the same fundamentalfrequency. Thus, the fundamental frequency of a communications signalmay be varied to change the harmonic of the fundamental frequency thatpasses through the filter, which, in turn, will adjust the amplitude ofthe symbol that is transmitted through the communications network. Theelements of the communications network that generate waveformsrepresenting data are generally capable of being remotely adjusted, suchthat the fundamental frequency at which these elements generatewaveforms can be specified remotely. Thus, the amplitude of thewaveforms that are transmitted over the network can be remotelycontrolled by adjusting the fundamental frequency at which theseelements generate waveforms.

The description that follows describes adjusting amplitudes of signalsbeing transmitted over a PLC network. However, the apparatus and methodsdescribed below can be implemented in other communications networks andother computing environments.

FIG. 1 is a block diagram of an example network environment in whichendpoint control apparatus 105 communicates with endpoints 102 a-102 f(collectively referred to as “endpoints 102”). The network environment100 includes a service network 101 in which endpoints 102 are coupled(e.g., communicatively coupled) to substations 104 a, 104 b(collectively referred to as “substations 104”). The substations 104 aresystems that facilitate power distribution to the endpoints 102. Thesubstations 104 each include an endpoint control apparatus 105 a, 105 b(collectively referred to as “endpoint control apparatus 105”) thattransmits data to the endpoints 102, as described in more detail below.

The network 101 includes a network management apparatus 112. In someimplementations, the network management apparatus 112 is a dataprocessing apparatus that processes communications that are receivedfrom substations 104 and/or controls aspects of the service network 101based, at least in part, on information extracted from the symbols 106that were received from the substations 104.

For example, in a PLC network, the network management apparatus 112 canreceive data from the substations 104 indicating that power usage issignificantly higher in a particular portion of a power network than inother portions of the power network. Based on this data, the networkmanagement apparatus 112 can allocate additional resources to thatparticular portion of the network (i.e., load balance) or provide dataspecifying that there is increased power usage in the particular portionof the power network.

In some implementations, the network management apparatus 112 providedata to user devices 118 that can be accessed, for example, by thenetwork operator, maintenance personnel and/or customers. For example,data identifying the increased power usage described above can beprovided to a user device 118 accessible by the network operator, whocan, in turn, determine an appropriate action regarding the increasedusage. Additionally, data identifying a time-of-use measure and/or apeak demand measure can also be provided to the user device 118.Similarly, if there has been a power outage, the network managementapparatus 112 can provide data to user devices 118 that are accessibleby customers to provide information regarding the existence of theoutage and potentially provide information estimating duration of theoutage.

The data network 110 can be a wide area network (WAN), local areanetwork (LAN), the Internet, or any other communications network. Thedata network 110 can be implemented as a wired or wireless network.Wired networks can include any media-constrained networks including, butnot limited to, networks implemented using metallic wire conductors,fiber optic materials, or waveguides. Wireless networks include allfree-space propagation networks including, but not limited to, networksimplemented using radio wave and free-space optical networks. While onlytwo substations 104 a, 104 b and one network management apparatus 112are shown, the service network 101 can include many differentsubstations 104 that can each communicate with thousands of end points102 and many different network management apparatus 112 that can eachcommunicate with multiple substations 104.

The end points 102 can be any device capable of transmitting and/orreceiving data in the network environment 100. For example, the endpoints 102 can be meters with endpoints in a utility network, computingdevices, television set top terminals or telephones that transmit datain the service network 101. The description that follows refers to theend points 102 as power meters in a power distribution network. However,the description that follows is applicable to other types of end points102 in utility networks or other networks. For example, the descriptionthat follows is applicable to gas meters and water meters that arerespectively installed in gas and water distribution networks.

The end points 102 can be implemented to monitor and report variousoperating characteristics of the service network 101. For example, in apower distribution network, meters can monitor characteristics relatedto power usage in the network. Example characteristics related to powerusage in the network include average or total power consumption, powersurges, power drops and load changes, among other characteristics. Ingas and water distribution networks, meters can measure similarcharacteristics that are related to gas and water usage (e.g., totalflow and pressure).

Each of the substations 104 includes an endpoint control apparatus (ECA)105. The endpoint control apparatus 105 is a data processing apparatusthat transmits data downstream to the endpoints 102. The endpointcontrol apparatus 105 can include, for example, a waveform generatorthat can generate various waveforms (e.g., square waves, sine waves,and/or waveforms having other shapes) at a range of fundamentalfrequencies (e.g., 50 Hz-10,000 Hz). The endpoint control apparatus 105can also include an output amplifier that can amplify waveforms at oneor more selectable output amplitudes (e.g., 0.10-1.0V). The endpointcontrol apparatus 105 receives data that are to be transmitted to theendpoints 102, and can generate a waveform representing the data and/orencode the data for transmission to the endpoints 102.

The substations 104 and the end points 102 communicate with each otherover communications channels. Communications channels are portions ofspectrum over which data are transmitted. The center frequency andbandwidth of each communications channel can depend on thecommunications system in which they are implemented. In someimplementations, the communications channels for utility meters (e.g.,power, gas and/or water meters) can be implemented in power linecommunication (PLC) networks that dynamically allocate availablebandwidth according to an orthogonal frequency division multiple access(OFDMA) spectrum allocation technique or another channel allocationtechnique. (e.g., Time Division Multiple Access, Code Division MultipleAccess, and other Frequency Division Multiple Access techniques).

In some implementations, the endpoints 102 can be configured to receivedata from the ECAs 105 of the substations 104 over one or more“downstream” channels, while transmitting data to the substations 104over a different “upstream” channel. For example, each of the endpoints102 can be configured to receive “broadcast messages” (i.e., data thatare intended to be received by all of the endpoints 102, or a propersubset thereof) on a same “downstream” channel as the other endpoints,while each individual endpoint (e.g., 102 a) can be assigned a different“upstream” channel (as described above) over which the endpointtransmits data to the substation (e.g., 104 a). As used throughout thisdocument, a “downstream channel” is a channel over which data istransferred from a substation (or another network element) to anendpoint, while an “upstream channel” is a channel over which data istransferred from an endpoint to a substation (or another networkelement).

The data that are transmitted from the substations 104 to the endpoints102 (i.e., downstream data) can include, for example, data that specifyconfiguration settings for the endpoints 102, updated “upstream” or“downstream” communications channel assignments, synchronization data(e.g., timing synchronization information), and/or firmware updates.

The data that are transmitted from the endpoints 102 to the substations104 (i.e., upstream data) can include, for example, reporting data thatspecify, for example, measures of total power consumption, powerconsumption over a specified period of time, peak power consumption,instantaneous voltage, peak voltage, minimum voltage and other measuresof related to power consumption and power management (e.g., loadinformation). Each endpoint (e.g., 102 a) can also transmit status datathat specify a status of the endpoint (e.g., operating in a normaloperating mode, error mode, emergency power mode, or another state suchas a recovery state following a power outage).

The status data that are transmitted by an endpoint (e.g., 102 a) canalso specify an endpoint identifier for the endpoint and/or a number (orrate) of symbol errors (or bit errors) that the endpoint has detected indata that are received from the substation 104. In some implementations,the endpoint identifier is inferred based on the channel over which thestatus data are received (e.g., when each endpoint is assigned tocommunicate over a unique channel). The status data can also specify asignal to noise measure for symbols that are being received by theendpoint 102, or other measures of transmission quality.

In some implementations, the data that are transmitted over the network101 are formatted as symbols 106 (i.e., waveforms representing one ormore bits and that persist on a communications channel for a fixedperiod of time). In some implementations, the symbols 106 arecontinuously or intermittently transmitted over a specified unitinterval. A unit interval is a period of time over which a particularsymbol is transmitted. A unit interval for each symbol can be less thanor equal to the time interval (i.e., 1/update rate) at which updateddata are required to be provided.

For example, assume that endpoint 102 a is required to transmit updatedstatus data to the substation 104 a every 20 minutes (i.e., thespecified update rate for the endpoint). In this example, the endpoint102 a can transmit a symbol representing a first set of updated statusdata for twenty minutes, and then transmit another symbol representing anext set of updated status data for a subsequent twenty minutes. Theupdate rate and/or unit interval for an endpoint can be specified by anetwork administrator based, for example, on types and amounts of datathat are being received from the endpoint, preferences of a customer(e.g., a power company) to whom the data are being provided, and/orchannel characteristics of the channel over which the data are beingtransmitted. An update rate of 20 minutes is used for purposes ofexample, but other update rates (e.g., 1 minute, 5 minutes, 10 minutes,1 hour, or 1 day) can be used.

The data that the substations 104 transmit downstream to the endpoints102 can also be transmitted using symbols that are transmitted over unitintervals in a manner similar to that by which the endpoints transmitdata to the substations 104. The unit interval over which a substation(e.g., 104 a) transmits a symbol to the endpoints (e.g., 102 a-102 c)can be based, for example, on an amplitude at which the symbol istransmitted to the endpoints. For example, as the amplitude of a symbolis increased (e.g., relative to the noise floor of the channel overwhich the symbol is being transmitted), the time over which energy ofthe symbol must be accumulated in order to recover the symbol (e.g.,with less than a threshold number of bit errors or less than a thresholdbit error rate) generally decreases. Thus, symbols that are transmittedat higher amplitudes can generally be transmitted over shorter unitintervals than symbols that are transmitted at lower amplitudes. The biterror rates for symbols that are transmitted at higher amplitudes (e.g.,relative to the noise floor) are also generally lower than the bit errorrates for symbols that are transmitted at lower amplitudes. Thus, thereliability with which symbols are recovered by endpoints 102 generallyincreases as the amplitude at which the symbols that are transmitted bythe substation 104 is increased (i.e., relative to the noise floor).

Although the reliability with which symbols are recovered by endpoints102 can be increased by increasing the amplitude at which the symbolsare transmitted, symbols that are transmitted at higher amplitudes aremore likely to interfere with proper operation of neighboring endpoints(i.e., endpoints that are configured to communicate with a differentsubstation). For example, assume that the network 101 is configured suchthat substation 104 a is responsible for communicating with endpoints102 a-102 c, while substation 104 b is a neighboring substation (i.e.,relative to substation 104 a) that is responsible for communicating withneighboring endpoints 102 d-102 f. In this example, it is possible thatas the amplitude of the transmissions from substation 104 a isincreased, that these transmissions will be recovered by one or more ofthe neighboring endpoints 102 d-102 f, such that these endpoints beginto communicate with substation 104 a rather than substation 104 b. Thus,the amplitude at which symbols are transmitted by a substation (e.g.,104 a) are generally selected so that symbols are reliably recovered byendpoints (e.g., 102 a-102 c) with which the substation (e.g., 104 a) isassigned to communicate, while limiting the likelihood that thetransmissions will be recovered by neighboring endpoints.

The power at which a substation (e.g., 104 a) transmits symbols toendpoints (e.g., 104 a-104 c) may need to be adjusted in response tochanges in the load (e.g., the total impedance of the network elements)of the service network over time, as these changes can cause theamplitudes of the symbols that are received by the endpoints to change.For example, when additional endpoints are added to the network 101, theload of the network 101 may increase, and result in the amplitudes ofthe symbols received by the endpoints 102 are reduced. This reduction inamplitude may cause higher bit error rates for the endpoints 102, suchthat the reliability with which symbols being transmitted by thesubstation 104 a are recovered decreases. Thus, it may be necessary toincrease the output power of the ECA 105 a that is transmitting thesymbols to the endpoints 102 a-102 c in order to decrease the bit errorrates and increase the reliability with which the symbols are recoveredby the endpoints 102 a-102 c.

In another example, if one or more endpoints (or other network elements)are removed from the network, the load of the network 101 may bereduced. This load reduction can result in the amplitudes of the symbolsbeing transmitted by substation 104 a being recovered by the neighboringendpoints 102 d-102 f, such that the neighboring endpoints 102 d-102 fmay begin communicating with substation 104 a instead of substation 104b. In this example, it may be necessary to reduce the power at whichsubstation 104 a transmits symbols (or to increase the power at whichsubstation 104 b transmits symbols) so that the neighboring endpoints102 d-102 f resume communications with substation 104 b.

As described above, ECAs 105 can be configured to have a variable outputamplifier that is capable of transmitting fundamental frequencies atvarious amplitudes. However, adjustments to the output amplitude of theECA 105 a (or ECA 105 b) may require that a technician travel to thesubstation 104 a (or 104 b), and manually adjust the output amplitude ofthe ECA 105 a. Thus, adjusting the output amplitude of the ECA 105 a canbe time consuming and/or resource intensive.

The environment 100 includes an amplitude regulation apparatus 120 thatfacilitates remote variation of the amplitudes at which symbols aretransmitted over the network 101. In some implementations, the amplituderegulation apparatus 120 adjusts the amplitude at which symbols aretransmitted over the network 101 in response to receiving data that areindicative of a load change in the network 101.

For example, the network management apparatus 112 may receive from thesubstation 104 a bit error rate data that specify a bit error ratemeasure (e.g., an average (or other measure of central tendency) biterror rate for a set of endpoints or individual bit error rates) thatare being experienced by the endpoints 102 a-102 c, and provide this biterror rate data to the amplitude regulation apparatus 120. The amplituderegulation apparatus 120 determines whether the bit error rate measureexceeds a threshold bit error rate (e.g., a maximum acceptable bit errorrate as specified by the network administrator). If the bit error rateexceeds the threshold bit error rate, then the amplitude regulationapparatus 120 can provide instructions to the substation 104 a thatcause the amplitude of the symbols being transmitted to the endpoints102 a-102 c to be increased. As discussed with reference to FIG. 2, theamplitude of the symbols can be adjusted without adjusting anamplification factor of the ECA 105. Rather, the amplitude of thesymbols can be varied by adjusting the fundamental frequency at whichthe ECA 105 transmits the symbols and/or the duty cycle of the waveformsthat are used to generate the symbols.

In some implementations, instead of (or in addition to) providing theinstructions described above to the substation 104 a, the amplituderegulation apparatus 120 can provide alert data that cause presentationof an indication that the amplitudes of the symbols need adjustment. Forexample, the alert data can be provided to a user device 118 that isaccessible by the administrator of the network 101. In turn, theamplitude regulation apparatus 120 can await feedback from the userdevice requesting that the amplitudes of the symbols be adjusted. Oncethe feedback is received, the amplitude regulation apparatus 120 canprovide the substation 104 a with instructions that cause the amplitudeof the symbols to be adjusted without adjusting the amplitude of thefundamental frequency that is being output by the ECA 105.

The amplitude regulation apparatus 120 is depicted in FIG. 1 as being incommunication with the network management apparatus 112. However, theamplitude regulation apparatus 120 can also be implemented as an elementof the network management apparatus 112 or an as element of a substation(e.g., 104 a). The amplitude regulation apparatus 120 can also beimplemented to be in direct communication with one or more substations104.

FIG. 2 is a block diagram of an example ECA 105 and illustrates symbolamplitude adjustment. In some implementations, the ECA 105 includes awaveform generator 202, a filter 204, and an output amplifier 206. Theconfiguration of the waveform generator 202, the filter 204, and theamplifier 206 are provided for purposes of illustration, and the ECA 105can be implemented with different configurations. For example, thelocations of the filter 204 and the amplifier 206 may be changed so thatthe output of the waveform generator 202 is output to the amplifier 206,and the output of the amplifier is then filtered using the filter 204.

As described above, the waveform generator 202 can be configured togenerate a variety of different waveform shapes at a range offundamental frequencies. For example, the waveform generator 202 can beconfigured to generate a square wave having fundamental frequenciesbetween 50 Hz and 10,000 Hz. The waveform generator 202 can also beconfigured to generate waveforms having various different duty cycles(e.g., waveforms having duty cycles ranging from 10% to 90%).

The waveforms that are output by the waveform generator 202 arewaveforms in which symbol data 208 are encoded. The symbol data 208 canbe data such as updated communications channel assignments,synchronization data, and/or updated firmware that is to be provided tothe endpoints to which the ECA 105 is assigned.

As illustrated by FIG. 2, the waveforms that are used to represent thesymbol data 208 can be a set of square waves 210. If the set of squarewaves 210 have a 50% duty cycle, then the set of square waves 210 willhave a harmonic spectrum that includes non-zero spectral components forthe fundamental frequency of the set of square waves and odd harmonicsof the fundamental frequency, as illustrated by spectral graph 212. Forexample, according to the spectral graph 212, the fundamental frequency214 is the spectral component having the highest power, while the thirdharmonic 216 is a lower power spectral component than the fundamentalfrequency 214, and the fifth harmonic 218 is a lower power spectralcomponent than the third harmonic. Meanwhile, the second harmonic 220and the fourth harmonic 222 (as well as other even harmonics) will bezero amplitude spectral components.

The ECA 105 includes a filter 204 that restricts the spectral componentsthat are transmitted to the endpoints. In some implementations, thefilter is a bandpass filter that restricts the spectral components thatare transmitted to the endpoints to those spectral components that areincluded in the “pass-band” of the filter (e.g., as defined by an uppercutoff frequency (“fu”) and a lower cutoff frequency (“fl”)). Asillustrated by filter response graph 224, when the filter 204 isimplemented in as a bandpass filter, the center frequency (“cf”) 226 ofthe pass-band (e.g., relative to the upper and lower cutoff frequencies)may be within a threshold spectral distance of the center frequency ofthe channel over which the ECA 105 communicates with the endpoints.

For example, if the endpoints are configured to communicate with the ECA105 over a channel that is centered at 400 Hz, then the filter 204 canbe configured to have a center frequency 226 of 400 Hz. Assuming, forpurposes of example, that the pass-band of the filter is 30 Hz, theupper cutoff frequency will be 415 Hz, and the lower cutoff frequencywill be 385 Hz, such that spectral components higher than 415 Hz or lessthan 385 Hz will be substantially filtered from transmission to theendpoints. Thus, if the fundamental frequency 214 is between 385 Hz and415 Hz, then the fundamental frequency 214 will be transferred to theamplifier at substantially the same power as was output by the waveformgenerator 202. However, in this example, higher-order harmonics (e.g.,2nd, 3rd, 4th, and 5th harmonics) of the fundamental frequency 214 willbe substantially attenuated (e.g., will have substantially zeroamplitude) in the output from the filter 204.

The amplifier 206 receives the filtered waveforms from the filter 204,and amplifies the filtered waveforms to generate an output symbol 228that is transmitted over the network to the endpoints. The amplifier 206can be adjusted to vary the amplitude of the output symbols. However,the amplifier 206 may be configured such that remote amplitudeadjustment may be difficult. For example, the amplifier may have amechanical switch that is required to be toggled in order to select anamplification factor for the amplifier. In another example, instructionsrequired to remotely adjust the amplification factor of the amplifiermay be difficult to transmit to an amplifier that is located at a powersubstation. Therefore, adjustment of the amplification factor for theamplifier 206 may require a technician to visit the substation at whichthe amplifier 206 is installed.

As discussed above, the waveform generator 202 may be capable oftransmitting waveforms within a range of different fundamentalfrequencies and having a range of selectable duty cycles. Because eachof these waveforms have known harmonic spectral components, that eachhave known amplitudes (i.e., relative to the amplitude of thefundamental frequency), it is possible to adjust the amplitude of outputsymbols 226 by adjusting the fundamental frequency 214 and/or duty cycleof the waveforms that are output by the waveform generator 202.

For example, assume that the filter 204 has a pass-band of 385 Hz-415 Hzand that the waveform generator 202 initially outputs a square wavehaving a 50% duty cycle and fundamental frequency of 400 Hz. Asdescribed above, the 400 Hz fundamental frequency will pass through thefilter 204, and be amplified by the amplifier 206 to generate outputsymbols 226. Now assume that the load of the network is reduced, suchthat the amplitude of the output symbols 226 needs to be reduced toprevent interference with neighboring endpoints. In this example, thefundamental frequency being output by the waveform generator 202 can bereduced to lower the amplitude of the output symbols 226 (assuming thatthe amplifier 206 is not adjusted).

In a particular example, if the fundamental frequency 214 being outputby the waveform generator 202 is adjusted to be 133.33 Hz, thefundamental frequency 214 will no longer pass through the filter 204since 133.33 Hz is not within the pass-band of the filter 204. However,the third harmonic 216 of the fundamental frequency 214 (e.g., ˜400 Hz),will now pass through the filter 204, as illustrated by the spectralgraph 230, while all higher harmonics (e.g., 5th, 7th, and 9thharmonics) will be filtered by the filter 204. Thus, the amplitude ofthe filtered waveform will be the amplitude of the 3rd harmonic, whichin this example, will be approximately ⅓ the amplitude of thefundamental frequency. Thus, if the amplification factor of theamplifier 206 is maintained constant, the amplitude of the output symbol226 will be reduced by ˜66% by adjusting the fundamental frequency 214so that the 3rd harmonic passes through the filter 204. Furtheramplitude reduction can be achieved by adjusting the fundamentalfrequency 214 so that higher harmonics (i.e., harmonics greater than the3rd harmonic) are passed through the filter 204.

Instead of (or in addition to) changing the fundamental frequency, theamplitude of output symbols 226 can be adjusted by adjusting the dutycycle of the waveforms that are output by the waveform generator 202.For example, assuming that the fundamental frequency remains the same,the amplitude of the output symbols 226 can be reduced by approximately30% by adjusting the duty cycle of the waveforms from 50% to 25%.Similarly, changing the duty cycle of the fundamental frequency from 50%to 17% will result in an amplitude reduction of approximately 50%.

As the duty cycle of the waveforms is adjusted, the amplitudes of theharmonics also vary, such that changes in both the duty cycle andfundamental frequency can be used to change the amplitude of outputsymbols 226. For example, the amplitude of the output symbols 226 can bereduce by approximately 50% by adjusting the duty cycle from 50% to 25%and adjusting the fundamental frequency such that only the secondharmonic passes through the filter 204.

Power line communications systems are three phase communicationsenvironments. In some implementations, fundamental frequency selectionand/or duty cycle selection can be made on a per-phase basis, forexample, based on the communications performance that is being observedon each phase. For example, if communications errors are only occurringin a single phase of the network, the fundamental frequency used tocommunicate in that phase may be adjusted while the fundamentalfrequencies used to communicate over the other two phases are notadjusted.

Additionally, because PLC networks are three phase environments, thephase difference between the waveforms that represent the symbols mayneed to be adjusted when the fundamental frequencies are adjusted. Forexample, when the same fundamental frequency passes through the filter204 for each phase of the network, the phase difference between thewaveforms that are generated by the waveform generator 202 willgenerally be 120 degrees. Assume that the fundamental frequency on eachphase is adjusted such that the third harmonic of the fundamentalfrequency is being passed through the filter, and transmitted to theendpoints. In this example, the phase difference between the waveformsthat are generated by the waveform generator 202 should be 40 degrees,because the phase difference between the third harmonics that will betransmitted to the endpoints will be 120 degrees.

In some implementations, the ECA 105 may also generate additionalspectral components at known spectral offsets (“offset spectralcomponents”). For example, in a typical PLC network, the ECA 105 mayalso generate an offset spectral component that is 120 Hz away from thefundamental frequency. In a particular example, if the waveformgenerator 202 is outputting a 50% duty cycle square wave at 300 Hz, theoffset spectral component will be located at 420 Hz. This offsetspectral component may have known amplitude characteristics relative tothe amplitude of the fundamental frequency, such that this offsetspectral component may be used to vary symbol amplitude in a mannersimilar to that by which the harmonic spectral components are used.

FIG. 3 is a flow chart of an example process 300 for varying symbolamplitude. The process 300 is a process by which a first fundamentalfrequency is selected for symbols that are transmitted to endpoints in acommunications network. Status data are received from the endpoints, anda determination is made based on the status data whether the number ofbit errors being detected by the endpoints exceeds a threshold number ofbit errors. In response to the determining that the number of bit errorsexceeds the threshold number of bit errors, the first fundamentalfrequency is adjusted, and symbols are generated at the adjustedfrequency.

The process 300 can be implemented, for example, by the amplituderegulation apparatus 120, the substations 104, and/or the networkmanagement apparatus 112 of FIG. 1. In some implementations, a dataprocessing apparatus includes one or more processors that are configuredto perform actions of the process 300. In other implementations, acomputer readable medium can include instructions that when executed bya computer cause the computer to perform actions of the process 300.

A first fundamental frequency is selected for symbols that aretransmitted to endpoints in a communications system (302). The firstfundamental frequency is selected so that a baseline harmonic of thefirst fundamental frequency is within a downstream channel over whichdata are transferred from a substation to the endpoints. In someimplementations, the first fundamental frequency is selected so that thebaseline harmonic is a second harmonic (or a higher order harmonic) ofthe fundamental frequency.

For example, assume that the downstream channel has a center frequencyof 400 Hz. In this example, the first fundamental frequency can beselected to be 133.33 Hz so that the third harmonic of the firstfundamental frequency (i.e., 3*133.33 Hz) is substantially equal to thecenter frequency of the downstream channel. As described with referenceto FIG. 2, if a bandpass filter is used to restrict the spectralcomponents that are transmitted to the endpoints, this bandpass filtercan have a pass-band that includes the spectrum that defines thedownstream channel. Continuing with the example above, if the downstreamchannel has a channel bandwidth of 30 Hz, then the bandpass filter canhave a pass-band of 30 Hz that is centered at 400 Hz. In this example,only the third harmonic of the first fundamental frequency will passthrough the bandpass filter for transmission to the endpoints.

In some implementations, the first fundamental frequency can be selectedto be the highest fundamental frequency at which fewer than a thresholdnumber of neighboring endpoints are receiving the symbols, and at whicha harmonic of the fundamental frequency is within the downstreamchannel. For example, the symbols can initially be generated at aninitial fundamental frequency that is within the downstream channel.These symbols can be amplified at a first amplification factor (e.g.,using a maximum amplitude multiplier), and transmitted to the endpoints.

When the symbols have an initial fundamental frequency that is withinthe downstream channel and are transmitted at maximum power, it islikely that each of the nodes with which an endpoint is assigned tocommunicate will accurately receive the symbols. However, it is alsopossible that neighboring endpoints (i.e., endpoints with which thesubstation is not assigned to communicate) will also receive thesymbols, which may interfere with proper communications between theneighboring endpoints and a neighboring substation with which theneighboring endpoints should be communicating.

In some implementations, data indicative of the number of neighboringnodes that are receiving the symbols is received. The data may specifythat the number of neighboring endpoints with which a neighboringsubstation is communicating has decreased relative to a total number ofneighboring endpoints with which the neighboring substation is assignedto communicate. If the number of neighboring endpoints that are incommunication with the neighboring substation has decreased more than athreshold amount (e.g., an absolute number of neighboring endpoints or apercentage of the total neighboring endpoints), it can be determinedthat the amplitude at which the symbols are being transmitted should bereduced.

For example, if the data specify that the number of neighboringendpoints with which the neighboring substation is communicating hasdecreased from 45 to 30, it may be assumed that 15 neighboring endpointsare receiving the symbols. Assume for this example that the amplitude ofthe symbols should be reduced if it is determined that more than 5neighboring nodes are receiving the symbols. Thus, in this example, theamplitude of the symbols should be reduced.

In response to determining that the amplitude at which the symbols arebeing transmitted should be reduced, the initial fundamental frequencycan be reduced to a reduced frequency at which a harmonic (e.g., secondor higher order harmonic) of the reduced frequency is within thedownstream channel. Assuming that fewer than all harmonics (e.g., onlyone harmonic) of the reduced frequency are within the downstream channel(and/or a pass-band of a filter such as the filter 204 of FIG. 2), theamplitude of the symbol being transmitted over the downstream channelwill be reduced relative to the amplitude of the symbol for which thefundamental frequency was within the downstream channel. Thus, thesymbol will be received by fewer neighboring endpoints.

Data indicative of the number of neighboring nodes that are receivingthe symbols can again be received, and the number of neighboringendpoints that are communicating with the neighboring substation canagain be analyzed to determine whether the number of neighboring nodesthat are receiving the symbols is within an acceptable range (e.g., lessthan a threshold number of neighboring nodes). If the number ofneighboring nodes that are receiving the symbols is not within theacceptable range, the reduced frequency can be reduced further, asdescribed above. If the number of neighboring nodes that are receivingthe symbols is within the acceptable range, the reduced frequency can beselected as the first fundamental frequency that will be used togenerate the symbols. The symbols that are generated at the firstfundamental frequency can be filtered, as described with reference toFIG. 2, and amplified using the first amplification factor prior tobeing transmitted to the endpoints. The filtered and amplified symbolsthat are generated at the first fundamental frequency will have loweramplitude than the symbols that were generated at the initialfundamental frequency, as described with reference to FIG. 2. Thus,fewer neighboring endpoints will receive the symbols.

Status data are received from the endpoints (304). In someimplementations, the status data for each endpoint specify a number ofbit errors that have been detected by the endpoint. For example, eachendpoint can be configured to compute a bit error rate (or a symbolerror rate) for the symbols using, for example, forward error correctiontechniques or other data verification techniques. The endpoints cantransmit this data back to the substation from which the symbol wasreceived to provide the substation with an indication of transmissionquality.

In some implementations, the identity of an endpoint from which thestatus data are received is determined based on a channel over which thestatus data were received. For example, each endpoint can be assigned aseparate upstream channel over which the endpoint is to transmit data tothe substation. The substation can maintain an index of upstreamchannels and an identifier for the endpoint that has been assigned tocommunicate with the substation over each of the upstream channels.Thus, when the substation receives status data over a particularchannel, the substation can determine, based on the index, the identityof the endpoint that transmitted the status data.

In some implementations, the status data include data that areindicative of endpoint identity. For example, the status data caninclude data specifying a unique identifier (e.g., a serial number oranother unique identifier) with which the identity of the endpoint canbe determined. The unique identifier can be compared to a set of uniqueidentifiers for endpoints with which the substation has been assigned tocommunicate. In turn, the status data that specify unique identifiersthat are included in the set of unique identifiers can be determined tohave been received from endpoints with which the substation is assignedto communicate. The status data that specify unique identifiers that arenot included in the set of unique identifiers for the substation can bedetermined to be from neighboring endpoints.

A determination is made whether the status data that are received fromat least a threshold number of the endpoints specify a number of biterrors (e.g., an absolute number of bit errors or a bit error rate) thatexceeds a threshold number of bit errors (306). The threshold number ofbit errors can be specified, for example, by a network administratorbased on the maximum number of bit errors that can occur while stillrecovering the symbols with at least a specified level of confidence.The threshold number of endpoints can similarly be specified by thenetwork administrator based, for example, on an analysis of historicalbit error data. For example, the network administrator may determine,based on historical data, that symbol amplitude is not a significantcontributor to bit errors unless at least 20% of the endpoints arereporting bit error rates that exceed a threshold bit error rate. Inthis example, the network administrator may set the threshold number ofendpoints to be 20% of the endpoints.

In some implementations, the threshold number of endpoints can bespecified as a number of all endpoints from which status data arereceived. Alternatively, the threshold number of endpoints can bespecified as a number of only those endpoints that have been identified(e.g., based on the status data or channel assignments) to be endpointswith which the substation has been assigned to communicate.

In response to determining that at least the threshold number ofendpoints is reporting a bit error rate that exceeds the threshold biterror rate, the first fundamental frequency is adjusted to a secondfundamental frequency that is higher than the first fundamentalfrequency (308). In some implementations, the second fundamentalfrequency is a frequency at which a lower order harmonic relative to thebaseline harmonic is within the downstream channel. As described withreference to FIG. 2, the amplitude of the lower order harmonic will behigher than the amplitude of the baseline harmonic. Thus, the amplitudeof the symbol can be increased by generating symbols at the secondfundamental frequency (310), and transmitting the lower order harmonicrather than at the baseline harmonic.

In some implementations, the amplitude of the symbol can also beincreased by adjusting the duty cycle of the waveforms that are used torepresent the symbols (312). For example, assume that a square wave atthe first fundamental frequency is being used to represent the symbolsand that the square wave has a duty cycle of 25%. In this example, ifthe duty cycle of the square wave is increased to 50%, the amplitude ofthe symbols can be increased by approximately 30%. Thus, when at leastthe threshold number of endpoints is reporting a bit error rate thatexceeds the threshold bit error rate, the duty cycle can be increased,and symbols can be generated using the increased duty cycle (314).

As discussed above, adjusting either the first fundamental frequency orthe duty cycle can result in changes to symbol amplitude. In someimplementations, both the first fundamental frequency and the duty cycleare adjusted to achieve various symbol amplitudes between 100% of theamplitude of the first fundamental frequency, and 0% of the firstfundamental frequency. For example, Table 1 provides example symbolamplitudes that can be realized by adjusting the first fundamentalfrequency and/or the duty cycle of a square wave that is used torepresent the symbols.

TABLE 1 Spectral Component That is Symbol Amplitude (relative Within theDownstream to amplitude of fundamental Duty Cycle Channel frequency) 50%Fundamental Frequency ~100%  25% Fundamental Frequency ~70% 17%Fundamental Frequency ~50% 25% Second Harmonic ~50% 50% Second Harmonic ~0% 50% Third Harmonic ~33%

Other combinations of duty cycle and fundamental frequency can be usedto achieve other symbol amplitudes. For example, a symbol amplitude of˜30% of the fundamental frequency may be achieved by first adjusting thefundamental frequency at which a second harmonic of the fundamentalfrequency is within the downstream channel, and decreasing the dutycycle until the symbol amplitude is approximately 30% of the amplitudeof the fundamental frequency (e.g., at approximately 40% duty cycle).

The load of a power line communications network (or anothercommunications network) can change over time. Therefore, the amplitudeat which symbols are transmitted may need to be adjusted over time toensure that the symbols are being accurately recovered by the endpointsfor which the symbols are intended, while not interfering with theoperation of neighboring endpoints. For example, the load may continueto increase such that a threshold number of the endpoints are againdetermined to be experiencing bit error rates that exceed a thresholdbit error rate (306). In response to this determination, the fundamentalfrequency can again be adjusted (312), as described above, to increasethe amplitude at which the symbols are transmitted though the network.

The network load may also decrease, which can increase the likelihoodthat neighboring nodes will begin receiving the symbols (assumingconstant symbol amplitude), such that the symbols may interfere withproper operation of the neighboring nodes. Thus, it may be necessary todecrease the amplitude at which the symbols are transmitted through thenetwork. Returning again to step 306, if it is determined that fewerthan the threshold number of endpoints is reporting a bit error ratethat exceeds the threshold bit error rate, a determination can be madewhether a threshold number of neighboring endpoints are receiving thesymbols (316), as described above. For example, the determination can bebased on a determination that status data are being received from atleast the threshold number of neighboring endpoints, or receiving dataindicative of a number of neighboring endpoints that are receiving thesymbols.

If the threshold number of neighboring endpoints are determined to notbe receiving the symbols, symbols can continue to be generated at thefirst fundamental frequency (318), and status data can continue to bereceived from the endpoints (304). However, if the threshold number ofneighboring endpoints are determined to be receiving the symbols, theamplitude of the symbols that are transmitted can be reduced byadjusting the first fundamental frequency to a lower frequency and/oradjusting the duty cycle of the waveforms that represent the symbols ina manner similar to that described above. In some implementations, thefundamental frequency and/or the duty cycle can be adjusted until thesymbol amplitude is within a target amplitude range (e.g., 27%-30%)relative to the amplitude of the fundamental frequency.

FIG. 4 is a flow chart of another example process 400 for varying symbolamplitude. The process 400 is a process by which a first symbol having afirst fundamental frequency is passed through a filter having apass-band that includes a harmonic frequency of the first fundamentalfrequency. The filtered signal is amplified at an amplification factor,and a determination is made that at least a threshold number ofcommunications errors are occurring at endpoints to which the filteredsymbols are being transmitted. In response to this determination, asecond symbol having a second fundamental frequency is generated, passedthrough the filter, and amplified at the amplification factor.

The process 400 can be implemented, for example, by the amplituderegulation apparatus 120, the substations 104, and/or the networkmanagement apparatus 112 of FIG. 1. In some implementations, a dataprocessing apparatus includes one or more processors that are configuredto perform actions of the process 400. In other implementations, acomputer readable medium can include instructions that when executed bya computer cause the computer to perform actions of the process 400.

A first symbol is generated at a first fundamental frequency (402). Insome implementations, the first symbol is generated using a square wavethat has the first fundamental frequency, as described above. The firstsymbol can be generated, for example, by the waveform generator 202 ofFIG. 2.

The first symbol is filtered with a filter having a pass-band thatincludes a harmonic frequency of the first fundamental frequency (404).For example, assuming that the first fundamental frequency is selectedin a manner similar to that described with reference to FIG. 3, thefilter can have a pass-band that includes the downstream channel overwhich a substation communicates with endpoints, such that a harmonic ofthe fundamental frequency passes through the filter, and is transmittedto the endpoints.

The filtered symbol is amplified at an amplification factor (406). Forexample, as described above, the filtered symbol can be passed throughan amplified, such as the amplifier 206, of FIG. 2. The amplifier can beset to amplify the symbol at a particular amplification factor (e.g., amaximum amplification factor for the amplifier), such that the amplitudeof the symbol that is output from the amplifier is greater than theamplitude of the symbol that is input to the amplifier.

The amplified symbol is transmitted over the downstream channel to theendpoints, and a determination is made that at least a threshold numberof communications errors are occurring at the endpoints to which thesymbols are being transmitted (408). The communications can include, forexample, bit errors that are being experienced by endpoints, as well asreceipt of the symbols by neighboring endpoints, as described above.

In response to determining that the threshold number of communicationserrors are occurring, a second symbol is generated at a secondfundamental frequency (410). The second symbol can include the same (ordifferent) data relative to the first symbol. However, the secondfundamental frequency will differ from the first fundamental frequency.As described above, the second fundamental frequency will be a frequencyfor which a harmonic of the second fundamental frequency is within thepass-band of the filter.

The second symbol is filtered with the filter (412), and amplified atsubstantially the same amplification factor as the first symbol (414).

FIG. 5 is a block diagram of an example system 500 that can be used tofacilitate symbol amplitude variation, as described above. The system500 includes a processor 510, a memory 520, a storage device 530, and aninput/output device 540. Each of the components 510, 520, 530, and 540can be interconnected, for example, using a system bus 550. Theprocessor 510 is capable of processing instructions for execution withinthe system 500. In one implementation, the processor 510 is asingle-threaded processor. In another implementation, the processor 510is a multi-threaded processor. The processor 510 is capable ofprocessing instructions stored in the memory 520 or on the storagedevice 530.

The memory 520 stores information within the system 500. In oneimplementation, the memory 520 is a computer-readable medium. In oneimplementation, the memory 520 is a volatile memory unit. In anotherimplementation, the memory 520 is a non-volatile memory unit.

The storage device 530 is capable of providing mass storage for thesystem 500. In one implementation, the storage device 530 is acomputer-readable medium. In various different implementations, thestorage device 530 can include, for example, a hard disk device, anoptical disk device, or some other large capacity storage device.

The input/output device 540 provides input/output operations for thesystem 500. In one implementation, the input/output device 540 caninclude one or more of a network interface device, e.g., an Ethernetcard, a serial communication device, e.g., and RS-232 port, and/or awireless interface device, e.g., and 802.11 card. In anotherimplementation, the input/output device can include driver devicesconfigured to receive input data and send output data to otherinput/output devices, e.g., keyboard, printer and display devices 560.Other implementations, however, can also be used, such as mobilecomputing devices, mobile communication devices, set-top box televisionclient devices, etc.

Although an example processing system has been described in FIG. 5,implementations of the subject matter and the functional operationsdescribed in this specification can be implemented in other types ofdigital electronic circuitry, or in computer software, firmware, orhardware, including the structures disclosed in this specification andtheir structural equivalents, or in combinations of one or more of them.

Embodiments of the subject matter and the operations described in thisspecification can be implemented in digital electronic circuitry, or incomputer software, firmware, or hardware, including the structuresdisclosed in this specification and their structural equivalents, or incombinations of one or more of them. Embodiments of the subject matterdescribed in this specification can be implemented as one or morecomputer programs, i.e., one or more modules of computer programinstructions, encoded on computer storage medium for execution by, or tocontrol the operation of, data processing apparatus. Alternatively or inaddition, the program instructions can be encoded on anartificially-generated propagated signal, e.g., a machine-generatedelectrical, optical, or electromagnetic signal, that is generated toencode information for transmission to suitable receiver apparatus forexecution by a data processing apparatus. A computer storage medium canbe, or be included in, a computer-readable storage device, acomputer-readable storage substrate, a random or serial access memoryarray or device, or a combination of one or more of them. Moreover,while a computer storage medium is not a propagated signal, a computerstorage medium can be a source or destination of computer programinstructions encoded in an artificially-generated propagated signal. Thecomputer storage medium can also be, or be included in, one or moreseparate physical components or media (e.g., multiple CDs, disks, orother storage devices).

The operations described in this specification can be implemented asoperations performed by a data processing apparatus on data stored onone or more computer-readable storage devices or received from othersources.

The term “data processing apparatus” encompasses all kinds of apparatus,devices, and machines for processing data, including by way of example aprogrammable processor, a computer, a system on a chip, or multipleones, or combinations, of the foregoing The apparatus can includespecial purpose logic circuitry, e.g., an FPGA (field programmable gatearray) or an ASIC (application-specific integrated circuit). Theapparatus can also include, in addition to hardware, code that createsan execution environment for the computer program in question, e.g.,code that constitutes processor firmware, a protocol stack, a databasemanagement system, an operating system, a cross-platform runtimeenvironment, a virtual machine, or a combination of one or more of them.The apparatus and execution environment can realize various differentcomputing model infrastructures, such as web services, distributedcomputing and grid computing infrastructures.

A computer program (also known as a program, software, softwareapplication, script, or code) can be written in any form of programminglanguage, including compiled or interpreted languages, declarative orprocedural languages, and it can be deployed in any form, including as astand-alone program or as a module, component, subroutine, object, orother unit suitable for use in a computing environment. A computerprogram may, but need not, correspond to a file in a file system. Aprogram can be stored in a portion of a file that holds other programsor data (e.g., one or more scripts stored in a markup languagedocument), in a single file dedicated to the program in question, or inmultiple coordinated files (e.g., files that store one or more modules,sub-programs, or portions of code). A computer program can be deployedto be executed on one computer or on multiple computers that are locatedat one site or distributed across multiple sites and interconnected by acommunication network.

The processes and logic flows described in this specification can beperformed by one or more programmable processors executing one or morecomputer programs to perform actions by operating on input data andgenerating output. The processes and logic flows can also be performedby, and apparatus can also be implemented as, special purpose logiccircuitry, e.g., an FPGA (field programmable gate array) or an ASIC(application-specific integrated circuit).

Processors suitable for the execution of a computer program include, byway of example, both general and special purpose microprocessors, andany one or more processors of any kind of digital computer. Generally, aprocessor will receive instructions and data from a read-only memory ora random access memory or both. The essential elements of a computer area processor for performing actions in accordance with instructions andone or more memory devices for storing instructions and data. Generally,a computer will also include, or be operatively coupled to receive datafrom or transfer data to, or both, one or more mass storage devices forstoring data, e.g., magnetic, magneto-optical disks, or optical disks.However, a computer need not have such devices.

Devices suitable for storing computer program instructions and datainclude all forms of non-volatile memory, media and memory devices,including by way of example semiconductor memory devices, e.g., EPROM,EEPROM, and flash memory devices; magnetic disks, e.g., internal harddisks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROMdisks. The processor and the memory can be supplemented by, orincorporated in, special purpose logic circuitry.

To provide for interaction with a user, embodiments of the subjectmatter described in this specification can be implemented on a computerhaving a display device, e.g., a CRT (cathode ray tube) or LCD (liquidcrystal display) monitor, for displaying information to the user and akeyboard and a pointing device, e.g., a mouse or a trackball, by whichthe user can provide input to the computer. Other kinds of devices canbe used to provide for interaction with a user as well; for example,feedback provided to the user can be any form of sensory feedback, e.g.,visual feedback, auditory feedback, or tactile feedback; and input fromthe user can be received in any form, including acoustic, speech, ortactile input. In addition, a computer can interact with a user bysending documents to and receiving documents from a device that is usedby the user; for example, by sending web pages to a web browser on auser's client device in response to requests received from the webbrowser.

While this specification contains many specific implementation details,these should not be construed as limitations on the scope of anyinventions or of what may be claimed, but rather as descriptions offeatures specific to particular embodiments of particular inventions.Certain features that are described in this specification in the contextof separate embodiments can also be implemented in combination in asingle embodiment. Conversely, various features that are described inthe context of a single embodiment can also be implemented in multipleembodiments separately or in any suitable subcombination. Moreover,although features may be described above as acting in certaincombinations and even initially claimed as such, one or more featuresfrom a claimed combination can in some cases be excised from thecombination, and the claimed combination may be directed to asubcombination or variation of a subcombination.

Similarly, while operations are depicted in the drawings in a particularorder, this should not be understood as requiring that such operationsbe performed in the particular order shown or in sequential order, orthat all illustrated operations be performed, to achieve desirableresults. In certain circumstances, multitasking and parallel processingmay be advantageous. Moreover, the separation of various systemcomponents in the embodiments described above should not be understoodas requiring such separation in all embodiments, and it should beunderstood that the described program components and systems cangenerally be integrated together in a single software product orpackaged into multiple software products.

Thus, particular embodiments of the subject matter have been described.Other embodiments are within the scope of the following claims. In somecases, the actions recited in the claims can be performed in a differentorder and still achieve desirable results. In addition, the processesdepicted in the accompanying figures do not necessarily require theparticular order shown, or sequential order, to achieve desirableresults. In certain implementations, multitasking and parallelprocessing may be advantageous.

1. A system, comprising: a symbol generator including: a waveformgenerator configured to output waveforms at a plurality of selectablefundamental frequencies and with a selectable duty cycle; and a bandpassfilter having a pass-band that is within a communications channel of acommunications network; data processing apparatus operable to interactwith the symbol generator and to perform operations including:determining that at least a threshold number of endpoints that receivesymbols from the symbol generator are experiencing a same type oftransmission error; and in response to the determination, causing thewaveform generator to adjust at least one of the fundamental frequencyor a duty cycle of the waveforms, wherein the fundamental frequency isadjusted to a frequency having a harmonic that is within the pass-band.2. The system of claim 1, wherein the data processing apparatus isfurther operable to perform operations including: receiving transmissionquality data specifying a bit error rate as for symbols that weregenerated by the symbol generator and received by the endpoints, whereindetermining that at least a threshold number of endpoints areexperiencing a same type of transmission error comprises determiningthat at least the threshold number of endpoints are detecting a biterror rate that exceeds a threshold bit error rate.
 3. The system ofclaim 2, wherein the data processing apparatus is operable to adjust atleast one of the fundamental frequency or a duty cycle by beingconfigured to cause the waveform generator to increase the fundamentalfrequency in response to determining that at least the threshold numberof endpoints are detecting the bit error rate that exceeds the thresholdbit error rate.
 4. The system of claim 3, wherein the data processingapparatus is operable to cause the waveform generator to adjust at leastone of the fundamental frequency or a duty cycle by being configured tocause the waveform generator to increase both the fundamental frequencyand the duty cycle in response to determining that at least thethreshold number of endpoints are detecting the bit error rate thatexceeds the threshold bit error rate.
 5. The system of claim 2, whereinthe data processing apparatus is operable to cause the waveformgenerator to adjust at least one of the fundamental frequency or a dutycycle by being configured to cause the waveform generator to increasethe duty cycle in response to determining that at least the thresholdnumber of endpoints are detecting the bit error rate that exceeds thethreshold bit error rate.
 6. The system of claim 1, wherein the dataprocessing apparatus is further operable to perform operationsincluding: receiving transmission quality data specifying that a numberof neighboring endpoints with which a neighboring substation iscommunicating has decreased relative to a number of neighboringendpoints with which the neighboring substation is assigned tocommunicate, wherein determining that at least a threshold number ofendpoints are experiencing a same type of transmission error comprisesdetermining that at least the threshold number of neighboring endpointswith which the neighboring endpoints are communicating has decreasedmore than a threshold amount.
 7. The system of claim 6, wherein the dataprocessing apparatus is operable to cause the waveform generator toadjust at least one of the fundamental frequency or a duty cycle bybeing configured to cause the waveform generator to decrease thefundamental frequency in response to determining that at least thethreshold number of neighboring endpoints with which the neighboringendpoints are communicating has decreased more than a threshold amount.8. The system of claim 7, wherein the data processing apparatus isoperable to cause the waveform generator to adjust at least one of thefundamental frequency or a duty cycle by being configured to cause thewaveform generator to decrease both the fundamental frequency and theduty cycle in response to determining that at least the threshold numberof neighboring endpoints with which the neighboring endpoints arecommunicating has decreased more than a threshold amount.
 9. The systemof claim 5, wherein the data processing apparatus is operable to causethe waveform generator to adjust at least one of the fundamentalfrequency or a duty cycle by being configured to cause the waveformgenerator to decrease the duty cycle in response to determining that atleast the threshold number of neighboring endpoints with which theneighboring endpoints are communicating has decreased more than athreshold amount.
 10. A method performed by data processing apparatus,the method comprising: selecting a first fundamental frequency forsymbols that are transmitted to endpoints in a communications system,the first fundamental frequency being selected so that a baselineharmonic of the first fundamental frequency is within a downstreamchannel over which data are transferred from a substation to theendpoints, the baseline harmonic being at least a second harmonic of thefirst fundamental frequency; receiving status data from the endpoints,the status data for each endpoint specifying a number of bit errors thathave been detected by the endpoint; determining that the status datafrom at least a threshold number of the endpoints specify a number ofbit errors that exceeds a threshold number of bit errors; and adjustingthe first fundamental frequency to a second fundamental frequency thatis higher than the first fundamental frequency, the second fundamentalfrequency being a frequency at which a lower harmonic than the baselineharmonic is within the downstream channel.
 11. The method of claim 10,wherein: receiving status data further comprises receiving, from each ofthe endpoints, status data that are indicative of endpoint identity; anddetermining that status data from at least a threshold number of theendpoints specify a number of bit errors that exceeds a threshold numberof bit errors comprises: identifying, based on the status data, theendpoints with which the substation is assigned to communicate; anddetermining that the status data for at least the threshold number ofthe identified endpoints specify a number of bit errors that exceeds thethreshold number of bit errors.
 12. The method of claim 11, whereinidentifying the endpoints with which the substation is assigned tocommunicate comprises identifying the endpoints having uniqueidentifiers that are included in a set of network identifiers forendpoints with which the substation is assigned to communicate.
 13. Themethod of claim 10, further comprising: determining that status data arebeing received from at least a threshold number of neighboringendpoints, each neighboring endpoint being an endpoint with which thesubstation is not assigned to communicate; and adjusting the firstfundamental frequency to a third fundamental frequency, the thirdfundamental frequency being a frequency at which a higher harmonic thanthe baseline harmonic is within the downstream channel.
 14. The methodof claim 13, wherein determining that status data are being receivedfrom at least the threshold number of neighboring endpoints comprises:receiving data indicating that a number of endpoints with which aneighboring substation is communicating has decreased relative to anumber of endpoints with which the neighboring substation is assigned tocommunicate; and determining that the number of endpoints with which theneighboring substation is communicating has decreased more than athreshold amount.
 15. The method of claim 10, further comprising:transmitting the symbols to the endpoints, the symbols having an initialfundamental frequency that is within the downstream channel and beingtransmitted at a first amplification factor; and determining that atleast a threshold number of neighboring endpoints are receiving thesymbols, each neighboring endpoint being an endpoint with which thesubstation is not assigned to communicate, wherein selecting the firstfundamental frequency comprises: reducing the initial fundamentalfrequency to a reduced frequency at which a harmonic of the reducedfrequency is within the downstream channel; determining that the symbolsare being received from fewer than the threshold number of neighboringendpoints; and selecting the reduced frequency to be the firstfundamental frequency.
 16. The method of claim 15, further comprisingtransmitting the symbols to the endpoints at the first amplificationfactor, the symbols being generated at the first fundamental frequency.17. The method of claim 10, further comprising following adjustment ofthe first fundamental frequency, adjusting a duty cycle of the secondfundamental frequency until an amplitude of the symbol is within atarget amplitude range.
 18. A method performed by data processingapparatus, the method comprising: transmitting symbols from a substationto endpoints in a communications network, the symbols being transmittedat a first frequency and amplified at an amplification factor, the firstfrequency being a harmonic of a fundamental frequency for the symbols,the harmonic being within a downstream channel over which the substationcommunicates with the endpoints; receiving transmission quality dataspecifying a measure of transmission quality for the symbols;determining that at least a threshold number of endpoints in thecommunications network are experiencing a same type of transmissionerror; adjusting the fundamental frequency based on the type oftransmission error, the fundamental frequency being adjusted so that adifferent harmonic of the adjusted fundamental frequency is within thedownstream channel; and transmitting the symbols over the downstreamchannel, the symbols being generated at the fundamental frequency andamplified at the amplification factor.
 19. A method performed by dataprocessing apparatus, the method comprising: generating a first symbolat a first fundamental frequency; filtering the first symbol with afilter having a pass-band that includes a harmonic frequency of thefirst fundamental frequency; amplifying the filtered first symbol at anamplification factor; determining that at least a threshold number ofcommunications errors are occurring at endpoints to which the firstfiltered symbols are being transmitted; generating a second symbol at asecond fundamental frequency that is different than the firstfundamental frequency, the second fundamental frequency having aharmonic that is within the pass-band; filtering the second symbol withthe filter; and amplifying the second filtered symbol at theamplification factor.
 20. A computer storage medium encoded with acomputer program, the program comprising instructions that when executedby data processing apparatus cause the data processing apparatus toperform operations comprising: selecting a first fundamental frequencyfor symbols that are transmitted to endpoints in a communicationssystem, the first fundamental frequency being selected so that abaseline harmonic of the first fundamental frequency is within adownstream channel over which data are transferred from a substation tothe endpoints, the baseline harmonic being at least a second harmonic ofthe first fundamental frequency; receiving status data from theendpoints, the status data for each endpoint specifying a number of biterrors that have been detected by the endpoint; determining that thestatus data from at least a threshold number of the endpoints specify anumber of bit errors that exceeds a threshold number of bit errors; andadjusting the first fundamental frequency to a second fundamentalfrequency that is higher than the first fundamental frequency, thesecond fundamental frequency being a frequency at which a lower harmonicthan the baseline harmonic is within the downstream channel.